#include "httplib.h"  // 引入httplib库，用于HTTP客户端功能

#define SERVER_IP "43.140.216.191"  // 定义服务器IP地址常量
#define SERVER_PORT 8888            // 定义服务器端口常量

int main()
{
    // 创建HTTP客户端实例，连接到指定IP和端口
    httplib::Client cli(SERVER_IP, SERVER_PORT);

    // 发送GET请求到/hi路径
    auto res1 = cli.Get("/hi");
    // 打印响应状态码和内容
    std::cout << res1->status << std::endl;
    std::cout << res1->body << std::endl;

    // 发送GET请求到/numbers/666路径
    auto res2 = cli.Get("/numbers/666");
    // 打印响应状态码和内容
    std::cout << res2->status << std::endl;
    std::cout << res2->body << std::endl;

    // 准备多部分表单数据（模拟文件上传）
    httplib::MultipartFormDataItems items = {
        {"file1", "this is file content", "hello.txt", "text/plain"}
        // 参数说明：
        // 1. 字段名(file1)
        // 2. 文件内容
        // 3. 文件名
        // 4. 文件类型
    };

    // 发送POST请求到/upload路径，上传表单数据
    auto res3 = cli.Post("/upload", items);
    // 打印响应状态码和内容
    std::cout << res3->status << std::endl;
    std::cout << res3->body << std::endl;

    return 0;
}